/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.mycompany.entidades;

import java.io.Serializable;
import java.util.Date;
import javax.persistence.Basic;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.xml.bind.annotation.XmlRootElement;

/**
 *
 * @author Johnny
 */
@Entity
@Table(catalog = "celulares", schema = "")
@XmlRootElement
@NamedQueries({
    @NamedQuery(name = "Diario.findAll", query = "SELECT d FROM Diario d"),
    @NamedQuery(name = "Diario.findByIddiario", query = "SELECT d FROM Diario d WHERE d.iddiario = :iddiario"),
    @NamedQuery(name = "Diario.findByFecha", query = "SELECT d FROM Diario d WHERE d.fecha = :fecha"),
    @NamedQuery(name = "Diario.findByValor", query = "SELECT d FROM Diario d WHERE d.valor = :valor"),
    @NamedQuery(name = "Diario.findByEstado", query = "SELECT d FROM Diario d WHERE d.estado = :estado")})
public class Diario
  implements Serializable
{
  private static final long serialVersionUID = 1L;
  @Id
  @GeneratedValue(strategy=GenerationType.IDENTITY)
  @Basic(optional=false)
  @Column(nullable=false)
  private Integer iddiario;
  @Temporal(TemporalType.DATE)
  private Date fecha;

  @Column(precision=22)
  private Double valor;
  private Integer estado;

  @JoinColumn(name="idUsuario", referencedColumnName="nick", nullable=false)
  @ManyToOne(optional=false)
  private Usuario idUsuario;

  public Diario()
  {
  }

  public Diario(Integer iddiario)
  {
    this.iddiario = iddiario;
  }

  public Integer getIddiario() {
    return this.iddiario;
  }

  public void setIddiario(Integer iddiario) {
    this.iddiario = iddiario;
  }

  public Date getFecha() {
    return this.fecha;
  }

  public void setFecha(Date fecha) {
    this.fecha = fecha;
  }

  public Double getValor() {
    return this.valor;
  }

  public void setValor(Double valor) {
    this.valor = valor;
  }

  public Integer getEstado() {
    return this.estado;
  }

  public void setEstado(Integer estado) {
    this.estado = estado;
  }

  public Usuario getIdUsuario() {
    return this.idUsuario;
  }

  public void setIdUsuario(Usuario idUsuario) {
    this.idUsuario = idUsuario;
  }

  public int hashCode()
  {
    int hash = 0;
    hash += (this.iddiario != null ? this.iddiario.hashCode() : 0);
    return hash;
  }

  public boolean equals(Object object)
  {
    if (!(object instanceof Diario)) {
      return false;
    }
    Diario other = (Diario)object;
    if (((this.iddiario == null) && (other.iddiario != null)) || ((this.iddiario != null) && (!this.iddiario.equals(other.iddiario)))) {
      return false;
    }
    return true;
  }

  public String toString()
  {
    return "com.mycompany.entidades.Diario[ iddiario=" + this.iddiario + " ]";
  }
}